170 research outputs found
towards antifragile software architectures
Abstract: Antifragility is a rising issue in Software Engineering. Due to pervasiveness of software in a growing number of mission critical applications, traditional resilience and recovery systems may not be sufficient. Software has taken over many functionalities which are of vital interest in today and future world. We relay a lot on software applications which may be faulty and cause immense damages. To cope with this scenario, claiming to develop better software is not enough, since unexpected events a.k.a. Black Swans, may disrupt and overcome our system. The purpose of this paper is to propose a new architectural design that responds to the need to build antifragile systems for contemporary complex scenarios. We suggest a system which enhances its strength through experience and errors. It is a self adaptive system architecture improving when facing errors. The most relevant aspect of this approach is that architectures are not only resilient, they extract the intrinsic value of faults. This paper suggests that a fine grained architecture is the key issue to build antifragile systems
Observing LOD using Equivalent Set Graphs: it is mostly flat and sparsely linked
This paper presents an empirical study aiming at understanding the modeling
style and the overall semantic structure of Linked Open Data. We observe how
classes, properties and individuals are used in practice. We also investigate
how hierarchies of concepts are structured, and how much they are linked. In
addition to discussing the results, this paper contributes (i) a conceptual
framework, including a set of metrics, which generalises over the observable
constructs; (ii) an open source implementation that facilitates its application
to other Linked Data knowledge graphs.Comment: 18 page
A Reference Software Architecture for Social Robots
Social Robotics poses tough challenges to software designers who are required
to take care of difficult architectural drivers like acceptability, trust of
robots as well as to guarantee that robots establish a personalised interaction
with their users. Moreover, in this context recurrent software design issues
such as ensuring interoperability, improving reusability and customizability of
software components also arise.
Designing and implementing social robotic software architectures is a
time-intensive activity requiring multi-disciplinary expertise: this makes
difficult to rapidly develop, customise, and personalise robotic solutions.
These challenges may be mitigated at design time by choosing certain
architectural styles, implementing specific architectural patterns and using
particular technologies.
Leveraging on our experience in the MARIO project, in this paper we propose a
series of principles that social robots may benefit from. These principles lay
also the foundations for the design of a reference software architecture for
Social Robots. The ultimate goal of this work is to establish a common ground
based on a reference software architecture to allow to easily reuse robotic
software components in order to rapidly develop, implement, and personalise
Social Robots
Cooperative Thinking: analyzing a new framework for software engineering education
Computational Thinking (CT) and Agile Values (AV) focus respectively on the individual capability to think algorithmically, and on the principles of collaborative software development. Although these two dimensions of software engineering education complement each other, very few studies explored their interaction. In this paper we use an exploratory Structural Equation Modeling technique to introduce and analyze Cooperative Thinking (CooT), a model of team-based computational problem solving. We ground our model on the existing literature and validate it through Partial Least Square modeling. Cooperative Thinking is new competence which aim is to support cooperative problem solving of technical contents suitable to deal with complex software engineering problems. This article suggests to tackle the CooT construct as an education goal, to train students of software development to improve both their individual and teaming performances
Empirical Research on Customer Communication Challenges in the Companies Adopting Agile Practices
One of the most critical aspects of Software Development Process is the Requirements Engineering process and defining the correct and understandable requirements in Agile methodology. Hence, Requirements Engineering in agile directly effect the overall project success. This paper demonstrates a research study about the usage of Agile methods in the set of industrial companies located in Russia. The survey gives insights about different aspects of the method: communication challenges and issues arising during the Software Requirements Engineering phase in particular the challenges in the communication with the customers. To investigate these issues the paper presents an analysis of the state of the art done with the help of the research survey. The results of the interview sessions are summarized and the set of suggestions to overcome the challenges are proposed. 30 representatives from 20 different companies who are mainly Product owners and Product Managers participated in the surve y. As the results indicate, the communication is always a key challenge for the companies. The analysis of particular qualities of the communication field in the context of rapidly changing Software Development environment helped to define the outcomes related to the customer communicatio
Do altmetrics work for assessing research quality?
Alternative metrics (aka altmetrics) are gaining increasing interest in the scientometrics community as they can capture both the volume and quality of attention that a research work receives online. Nevertheless, there is limited knowledge about their effectiveness as a mean for measuring the impact of research if compared to traditional citation-based indicators. This work aims at rigorously investigating if any correlation exists among indicators, either traditional (i.e. citation count and h-index) or alternative (i.e. altmetrics) and which of them may be effective for evaluating scholars. The study is based on the analysis of real data coming from the National Scientific Qualification procedure held in Italy by committees of peers on behalf of the Italian Ministry of Education, Universities and Research
SQuAP-Ont: an ontology of software quality relational factors from financial systems
Quality, architecture, and process are considered the keystones of software engineering. ISO defines them in three separate standards. However, their interaction has been scarcely studied, so far. The SQuAP model (Software Quality, Architecture, Process) describes twenty-eight main factors that impact on software quality in banking systems, and each factor is described as a relation among some characteristics from the three ISO standards. Hence, SQuAP makes such relations emerge rigorously, although informally. In this paper, we present SQuAP-Ont, an OWL ontology designed by following a well established methodology based on the re-use of Ontology Design Patterns (i.e. ODPs). SQuAP-Ont formalises the relations emerging from SQuAP in order to represent and reason via Linked Data about software engineering in a three-dimensional model consisting of quality, architecture, and process ISO characteristics
- …